The discussion below is merely provided for general background information and is not intended to be used as an aid in determining the scope of the claimed subject matter.
Applications can be often developed in one of two methodologies: as a web or network based environment where development is divided between a server and a client, or as a non-distributed application where development is done on one platform. There are advantages and disadvantages for both methodologies. Referring first to the web or network based environment, development includes authoring the speech application to run on a web server that communicates to a second machine that interacts with the user. For instance, the second machine can be a telephony server that can receive calls from a user using a simple phone. The telephony server works with a speech server (either located on the same machine or on a separate machine). The speech application portion executing on the web server typically renders a mark-up language such as VoiceXML, which is a W3C standard, or SALT (Speech Application Language Tags), which is an ECMA standard. Use of these or other standards encourages portability across platforms. However, one disadvantage is that since another portion of the speech application runs on the client (e.g. telephony server), the author usually must be fluent in a number of languages (e.g. C#, javascript, etc). Since the application is split, debugging is more difficult. Furthermore, network delays can impact performance.
In a non-distributed application, all components or portions of the application can be developed using one language/platform. Debugging is easier since the development process is integrated; however, the code is typically proprietary, which can limit adoption for customers who want to avoid vendor lock-in.
Finally, switching from one mode of development to the other has so far been very costly. A major rewrite of the application is necessary to move from a non-distributed application to a web or network based application, or vice-versa.